package cn.topevery.garden.entity.po;

import cn.afterturn.easypoi.excel.annotation.Excel;
import cn.topevery.garden.framework.base.BaseEntity;
import hw.topevery.framework.annotation.DbTable;
import hw.topevery.framework.annotation.DbTableField;
import hw.topevery.framework.enums.DbTypeEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.alibaba.fastjson.annotation.JSONField;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.math.BigDecimal;
import org.locationtech.jts.geom.Geometry;
import lombok.Data;
import cn.topevery.garden.entity.serializer.GeometrySerializer;

/**
 * 机械信息
 */
@Data
@DbTable(tableName = "t_machine_info")
public class MachineInfo extends BaseEntity {
        /**
     * UUID
     */
    @DbTableField(columnName = "c_entity_id", dbType = DbTypeEnum.CHAR)
    public String entityId ;

    /**
     * 名称 
     */
    @DbTableField(columnName = "c_name", dbType = DbTypeEnum.VARCHAR)
    public String name ;

    /**
     * 编码 
     */
    @DbTableField(columnName = "c_code", dbType = DbTypeEnum.VARCHAR)
    public String code ;

    /**
     * 品牌 
     */
    @DbTableField(columnName = "c_brand", dbType = DbTypeEnum.VARCHAR)
    public String brand ;

    /**
     * 所属单位Id 
     */
    @DbTableField(columnName = "c_dept_id", dbType = DbTypeEnum.CHAR)
    public String deptId ;

    /**
     * 所属单位 
     */
    @DbTableField(columnName = "c_dept_name", dbType = DbTypeEnum.VARCHAR)
    public String deptName ;

    /**
     * 购入日期 
     */
    @DbTableField(columnName = "c_buy_date", dbType = DbTypeEnum.TIMESTAMP)
    @JSONField(format="yyyy-MM-dd HH:mm:ss")
    public LocalDateTime buyDate ;

    /**
     * 上一次检修时间 
     */
    @DbTableField(columnName = "c_overhaul_date", dbType = DbTypeEnum.TIMESTAMP)
    @JSONField(format="yyyy-MM-dd HH:mm:ss")
    public LocalDateTime overhaulDate ;

    @DbTableField(columnName = "c_state", dbType = DbTypeEnum.INTEGER)
    @ApiModelProperty(value = "状态 ")
    private Integer state;

    @DbTableField(columnName = "c_desc", dbType = DbTypeEnum.VARCHAR)
    @ApiModelProperty(value = "描述 ")
    private String desc;
}
